package queue

import "errors"

//Node : 链表节结构
type Node struct {
	value    interface{}
	previous *Node
	next     *Node
}

//Value : 节点值
func (n *Node) Value() interface{} {
	return n.value
}

//SetVal : 设置当前节点值
func (n *Node) SetVal(value interface{}) error {
	if value == nil {
		return errors.New("value not allow empty")
	}
	n.value = value
	return nil
}

//Previous : 前一个节点
func (n *Node) Previous() *Node {
	return n.previous
}

//Next : 后一个节点
func (n *Node) Next() *Node {
	return n.next
}
